home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / SNNSV32.ZIP / SNNSv3.2 / xgui / sources / d3_zValue.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-04-25  |  4.3 KB  |  163 lines

  1. /*****************************************************************************
  2.   FILE           : d3_zValue.c
  3.   SHORTNAME      : zValue.c
  4.   SNNS VERSION   : 3.2
  5.  
  6.   PURPOSE        : creates the Z-value pannel
  7.   NOTES          :
  8.  
  9.   AUTHOR         : Ralf Huebner
  10.   DATE           : 1.12.1991
  11.  
  12.   CHANGED BY     :
  13.   IDENTIFICATION : @(#)d3_zValue.c    1.8 3/2/94
  14.   SCCS VERSION   : 1.8
  15.   LAST CHANGE    : 3/2/94
  16.  
  17.              Copyright (c) 1990-1994  SNNS Group, IPVR, Univ. Stuttgart, FRG
  18.              
  19. ******************************************************************************/
  20.  
  21.  
  22. #include <stdio.h>
  23.  
  24. #include <X11/Xlib.h>
  25. #include <X11/Xutil.h>
  26. #include <X11/Intrinsic.h>
  27. #include <X11/StringDefs.h>
  28. #include <X11/Shell.h>
  29. #include <X11/Xaw/Simple.h>
  30. #include <X11/Xaw/Box.h>
  31. #include <X11/Xaw/Form.h>
  32. #include <X11/Xaw/Toggle.h>
  33.  
  34. #include "ui.h"
  35.  
  36. #include "glob_typ.h"
  37. #include "ui_xWidgets.h"
  38. #include "d3_global.h"
  39. #include "d3_xUtils.h"
  40.  
  41. #include "d3_zValue.ph"
  42.  
  43.  
  44. /*****************************************************************************
  45.   FUNCTION : d3_readZvalue
  46.  
  47.   PURPOSE  : read the current z-value form the widget
  48.   RETURNS  : void
  49.   NOTES    :
  50.  
  51.   UPDATE   :
  52. ******************************************************************************/
  53.  
  54. static void d3_readZvalue (Widget w, Widget pannel, caddr_t call_data)
  55.  
  56. {
  57.     ui_actualZvalue = (short) ui_xIntFromAsciiWidget (z_valueWidget);
  58. }
  59.  
  60.  
  61. /*****************************************************************************
  62.   FUNCTION : d3_incZvalue
  63.  
  64.   PURPOSE  : increments the z-value in the dialog widget
  65.   RETURNS  : void
  66.   NOTES    :
  67.  
  68.   UPDATE   :
  69. ******************************************************************************/
  70.  
  71. static void d3_incZvalue (Widget w, Widget pannel, caddr_t call_data)
  72.  
  73. {
  74.     int n;
  75.     Arg arg[10];
  76.     char buf[10];
  77.  
  78.     ui_actualZvalue++;
  79.     sprintf (buf, "%d", ui_actualZvalue);
  80.     n = 0;
  81.     XtSetArg (arg[n], XtNstring, buf); n++;
  82.     XtSetValues (pannel, arg, (unsigned int) n);
  83. }
  84.  
  85.  
  86. /*****************************************************************************
  87.   FUNCTION : d3_decZvalue
  88.  
  89.   PURPOSE  : decrements the z-value in the dialog widget
  90.   RETURNS  : void
  91.   NOTES    :
  92.  
  93.   UPDATE   :
  94. ******************************************************************************/
  95.  
  96. static void d3_decZvalue (Widget w, Widget pannel, caddr_t call_data)
  97.  
  98. {
  99.     int n;
  100.     Arg arg[10];
  101.     char buf[10];
  102.  
  103.     ui_actualZvalue--;
  104.     sprintf (buf, "%d", ui_actualZvalue);
  105.     n = 0;
  106.     XtSetArg (arg[n], XtNstring, buf); n++;
  107.     XtSetValues (pannel, arg, (unsigned int) n);
  108. }
  109.  
  110.  
  111. /*****************************************************************************
  112.   FUNCTION : d3_createZvaluePannel
  113.  
  114.   PURPOSE  : creates the z-value pannel
  115.   RETURNS  : void
  116.   NOTES    : 
  117.  
  118.   UPDATE   :
  119. ******************************************************************************/
  120.  
  121. void d3_createZvaluePannel (Widget parent)
  122.  
  123. {
  124.  
  125.   static XtActionsRec  ActionRec [] = {{"d3_readZvalue", (XtActionProc) d3_readZvalue}};
  126.   XtTranslations Translation;
  127.  
  128.   Widget pannel, label, button, dummy, up, down;
  129.   int n;
  130.   Arg arg[10];
  131.   char buf[20];
  132.  
  133.   n = 0;
  134.  
  135.   XtSetArg(arg[n], XtNwidth, 250); n++;
  136.   XtSetArg(arg[n], XtNleft  , XtChainLeft); n++;
  137.   XtSetArg(arg[n], XtNright , XtChainLeft); n++;
  138.   XtSetArg(arg[n], XtNtop   , XtChainTop); n++;
  139.   XtSetArg(arg[n], XtNbottom, XtChainTop); n++;
  140.   pannel = XtCreateManagedWidget("pannel", formWidgetClass, parent, arg, (unsigned int) n);
  141.  
  142.   label = ui_xCreateLabelItem ("z-value ", pannel, d3_fontWidth * 7, NULL, NULL); 
  143.   sprintf (buf, "%d", ui_actualZvalue);
  144.   z_valueWidget = ui_xCreateDialogItem ("z_valueWidget", pannel, buf, d3_shortNumberWidth, label, NULL);
  145.  
  146.   button = d3_xCreateButtonItem ("ok", pannel, z_valueWidget, NULL);
  147.   dummy = ui_xCreateLabelItem (" ", pannel, d3_fontWidth, button, NULL); 
  148.   up = d3_xCreateButtonItem ("up", pannel, dummy, NULL);
  149.   down = d3_xCreateButtonItem ("down", pannel, up, NULL);
  150.  
  151.   XtAddCallback (button, XtNcallback, (XtCallbackProc) d3_readZvalue, (caddr_t) z_valueWidget);
  152.   XtAddCallback (up, XtNcallback, (XtCallbackProc) d3_incZvalue, (caddr_t) z_valueWidget);
  153.   XtAddCallback (down, XtNcallback, (XtCallbackProc) d3_decZvalue, (caddr_t) z_valueWidget);
  154.  
  155.   XtAppAddActions (ui_appContext, ActionRec, XtNumber (ActionRec));
  156.   Translation = XtParseTranslationTable ("<Key>Return: d3_readZvalue()");
  157.   XtOverrideTranslations (z_valueWidget, Translation);
  158.  
  159. }
  160.  
  161. /* end of file */
  162. /* lines: 186 */
  163.